//
//  XLWebSocketNetWorking.h
//  WebSocketTest
//
//  Created by tanqilong on 16/8/10.
//  Copyright © 2016年 tanqilong. All rights reserved.
//  websocket连接

#import "XLNetworking.h"

@interface XLWebSocketNetWorking : XLNetworking
@property (nonatomic,assign) float updateTime; //刷新时间,不设定
/**
 *  websocket连接,此连接需要子类指明地址
 *
 *  @param param       连接成功后发起的参数,可以为空,通过sendMessage发送
 *  @param view        缓冲图显示的地方
 *  @param connected   已经连接后的回调
 *  @param sucBlock    成功收到消息的回调
 *  @param cancelBlock 取消后的回调
 *  @param errorBlock  错误的回调
 *
 *  @return 类本身
 */
-(id)initWebSocketWithParameters:(NSObject *)param IndicatorView:(UIView *)view Connected:(void(^)())connected Message:(sucBlock)sucBlock CancelLoading:(cancelBlock)cancelBlock LoadingError:(errorBlock)errorBlock;

/**
 *  websocket连接
 *
 *  @param url         网络地址
 *  @param param       连接成功后发起的参数,可以为空,通过sendMessage发送
 *  @param view        缓冲图显示的地方
 *  @param connected   已经连接后的回调
 *  @param sucBlock    成功收到消息的回调
 *  @param cancelBlock 取消后的回调
 *  @param errorBlock  错误的回调
 *
 *  @return 类本身
 */
-(id)initWebSocketWithUrl:(NSString *)url Parameters:(NSObject *)param IndicatorView:(UIView *)view Connected:(void(^)())connected Message:(sucBlock)sucBlock CancelLoading:(cancelBlock)cancelBlock LoadingError:(errorBlock)errorBlock;

/**
 *  再次打开网络连接
 */
-(void)reopen;

/**
 *  中断网络连接
 */
-(void)close;

/**
 *  发送消息给服务器
 *
 *  @param message 消息
 */
-(void)sendMessage:(NSObject *)message;
@end
